RDS for PostgreSQL から Aurora PostgreSQL へのスナップショットやAurora リードレプリカを利用した移行がマネジメントコンソールから行えない場合の対処方法

RDS for PostgreSQL から Aurora PostgreSQL へのスナップショットやAurora リードレプリカを利用した移行がマネジメントコンソールから行えない場合の対処方法

マネジメントコンソールでの対応がうまくいかない場合は、AWS CLI での対応を行うことで問題の回避ができることがあります。
Clock Icon2021.10.28

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

困っていた内容

ドキュメントを参考にマネジメントコンソールで RDS for PostgreSQL から Aurora PostgreSQL への移行をスナップショットか Aurora リードレプリカを作成して行おうとしています。

ドキュメントに記載の手順をコンソールで実施していくと「スナップショットの移行」の項目がグレーアウトしており、「Aurora リードレプリカの作成」の選択肢も表示されません。対応方法について教えてください。

スナップショットの移行がグレーアウト

Auroraリードレプリカの作成が出現しない

どう対応すればいいの?

RDS for PostgreSQL のバージョンによっては、AWS CLIを利用することでスナップショットや Aurora リードレプリカの作成が可能です。

スナップショットの場合

$ aws rds restore-db-cluster-from-snapshot \
  --snapshot-identifier <DBスナップショットのARN> \
  --engine-version <エンジンバージョン> \
  --db-cluster-identifier <DBクラスタ名> \
  --engine aurora-postgresql
$ aws rds create-db-instance \
   --db-cluster-identifier <DBクラスタ名> \
   --db-instance-class <<DBインスタンスクラス> \
   --db-instance-identifier <DBインスタンス名> \
   --engine aurora-postgresql

Aurora リードレプリカの場合

$ aws rds create-db-cluster \
   --db-cluster-identifier <クラスター名> \
   --engine-version <エンジンバージョン> \
   --db-subnet-group-name <DBサブネットグループ名> \
   --replication-source-identifier <ソースDBインスタンスのARN> \
   --engine aurora-postgresql
$ aws rds create-db-instance \
   --db-cluster-identifier <DBクラスタ名> \
   --db-instance-class <<DBインスタンスクラス> \
   --db-instance-identifier <DBインスタンス名> \
   --engine aurora-postgresql

変更可能なエンジンバージョンかを確認する

RDS for PostgreSQL のエンジンバージョンとそれに対応する Aurora PostgreSQL のエンジンバージョン、マネジメントコンソールと AWS CLI での変更可否を検証してみました(※ 2021年10月23日時点)。

RDS for PostgreSQL Aurora PostgreSQL コンソール AWS CLI
9.6.20 9.6.21
9.6.21 9.6.21
9.6.22 9.6.22 ×
9.6.23 × × ×
10.15 10.14, 10.16
10.16 10.16
10.17 10.17 ×
10.18 × × ×
11.10 11.11
11.11 11.11
11.12 11.12 ×
11.13 × × ×
12.5 12.6
12.6 12.6
12.7 12.7 ×
12.8 × × ×
13.1 13.3
13.2 13.3
13.3 13.3
13.4 × × ×

上記の表をもとに移行が可能であるか、コンソールでの対応が可能であるかをご確認ください。

参照

Share this article

facebook logohatena logotwitter logo

© Classmethod, Inc. All rights reserved.